/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */

package com.model.domain.persona;

import com.model.domain.enaho.registro.Capitulo600Resumen;
import com.model.domain.proceso.envio.carga.ControlEnvioHogar;
import com.model.domain.proceso.envio.carga.EstadoCarga;
import com.model.domain.proceso.envio.carga.TipoCarga;
import com.model.domain.ubicacion.ViviendaXmlTransferido;

/**
 *
 * @author Rdelacruz
 */
public class HogarXmlTransferido {    
    
    private ViviendaXmlTransferido viviendaXmlTransferido;    
    private Hogar hogar;  
    
    private ControlEnvioHogar ultimaCarga;
    
    private Capitulo600Resumen cap601;
    private Capitulo600Resumen cap602;
    private Capitulo600Resumen cap602A;
    private Capitulo600Resumen cap603;
    private Capitulo600Resumen cap604;
    private Capitulo600Resumen cap605;
    private Capitulo600Resumen cap606;
    private Capitulo600Resumen cap606D;
    private Capitulo600Resumen cap607;
    private Capitulo600Resumen cap609;
    private Capitulo600Resumen cap610;
    private Capitulo600Resumen cap611;
    private Capitulo600Resumen cap612;
    //private Capitulo600Resumen cap612A; 
    
    public boolean esIgualEnCodigoA(HogarXml hxml) throws Exception {
        if(hogar==null || hxml==null) {
            throw new Exception("Uno de los hogares a comparar es nulo");
        }
        
        Integer cod1 = hogar.getCodigo();
        String cod2 = hxml.getCodigoHogar();        
        if(cod1==null || cod2==null) {
            throw new Exception("Uno de los codigo de los hogares a comparar es nulo");
        }        
        
        int cod2_int = Integer.parseInt(cod2);
        return cod1==cod2_int;
    }
    
    
    
    public boolean isCargado() {
        return ultimaCarga.getEstado()==EstadoCarga.CARGADO;
    }
    
    public boolean isPuedeCargarRecuperacion() {
        TipoCarga tipo = ultimaCarga.getLogXmlCargado().getProcesoCarga().getTipo();
        EstadoCarga res = ultimaCarga.getEstado();
        return tipo!=TipoCarga.MANUAL_RECUPERACION && res==EstadoCarga.CARGA_RECHAZADA;
    }
    
    public boolean isHogarRecuperado() {
        TipoCarga tipo = ultimaCarga.getLogXmlCargado().getProcesoCarga().getTipo();
        EstadoCarga res = ultimaCarga.getEstado();
        return tipo==TipoCarga.MANUAL_RECUPERACION && res==EstadoCarga.CARGADO;
    }

    public Capitulo600Resumen getCap601() {
        return cap601;
    }

    public void setCap601(Capitulo600Resumen cap601) {
        this.cap601 = cap601;
    }

    public Capitulo600Resumen getCap602() {
        return cap602;
    }

    public void setCap602(Capitulo600Resumen cap602) {
        this.cap602 = cap602;
    }

    public Capitulo600Resumen getCap602A() {
        return cap602A;
    }

    public void setCap602A(Capitulo600Resumen cap602A) {
        this.cap602A = cap602A;
    }

    public Capitulo600Resumen getCap603() {
        return cap603;
    }

    public void setCap603(Capitulo600Resumen cap603) {
        this.cap603 = cap603;
    }

    public Capitulo600Resumen getCap604() {
        return cap604;
    }

    public void setCap604(Capitulo600Resumen cap604) {
        this.cap604 = cap604;
    }

    public Capitulo600Resumen getCap605() {
        return cap605;
    }

    public void setCap605(Capitulo600Resumen cap605) {
        this.cap605 = cap605;
    }

    public Capitulo600Resumen getCap606() {
        return cap606;
    }

    public void setCap606(Capitulo600Resumen cap606) {
        this.cap606 = cap606;
    }

    public Capitulo600Resumen getCap606D() {
        return cap606D;
    }

    public void setCap606D(Capitulo600Resumen cap606D) {
        this.cap606D = cap606D;
    }

    public Capitulo600Resumen getCap607() {
        return cap607;
    }

    public void setCap607(Capitulo600Resumen cap607) {
        this.cap607 = cap607;
    }

    public Capitulo600Resumen getCap609() {
        return cap609;
    }

    public void setCap609(Capitulo600Resumen cap609) {
        this.cap609 = cap609;
    }

    public Capitulo600Resumen getCap610() {
        return cap610;
    }

    public void setCap610(Capitulo600Resumen cap610) {
        this.cap610 = cap610;
    }

    public Capitulo600Resumen getCap611() {
        return cap611;
    }

    public void setCap611(Capitulo600Resumen cap611) {
        this.cap611 = cap611;
    }

    public Capitulo600Resumen getCap612() {
        return cap612;
    }

    public void setCap612(Capitulo600Resumen cap612) {
        this.cap612 = cap612;
    }
 
    public Hogar getHogar() {
        return hogar;
    }

    public void setHogar(Hogar hogar) {
        this.hogar = hogar;
    }

    public ViviendaXmlTransferido getViviendaXmlTransferido() {
        return viviendaXmlTransferido;
    }

    public void setViviendaXmlTransferido(ViviendaXmlTransferido viviendaXmlTransferido) {
        this.viviendaXmlTransferido = viviendaXmlTransferido;
    }

    public ControlEnvioHogar getUltimaCarga() {
        return ultimaCarga;
    }

    public void setUltimaCarga(ControlEnvioHogar ultimaCarga) {
        this.ultimaCarga = ultimaCarga;
    }   
 
    
}
